In recent years, the voice encoding technology and motion picture encoding technology based on compression technology of voice and picture data are very important technology in enriching our audio visual life.
Various systems are proposed for the motion picture encoding technology nowadays. As the standards of the motion picture encoding technology, H.261 and H.263 are proposed by ITU-T (International Telecommunication Union-Telecommunication Standardization Sector), and MPEG-1, MPEG-2, and MPEG-4 are proposed by ISO (International Organization for Standardization). (MPEG is the abbreviation of Moving Picture Experts Group). Recently, H.264|MPEG-4 AVC (Advanced Video Coding) has been standardized by ITU-T and ISO jointly, as a new standard of the motion picture encoding technology.
Furthermore, SMPTE (Society of Motion Picture and Television Engineers) adopted “Video Codec 1 (VC1)” as the motion picture encoding technology of a next-generation mass optical disk standard “HD DVD” and “Blu-Ray Disk”. In addition, systems such as WMV of Microsoft Corp. and RealVideo of RealNetworks are used for the contents on the Internet.
In this way, many standards are flooding currently, based on different kinds of motion picture encoding technology.
The standards of these motion picture coding systems are adopted individually depending on each applicable field. For example, MPEG-2 is adopted for the current DVD, and as mentioned above, H.264|MPEG-4 AVC and VC1 are adopted for the next-generation DVD. H.264|MPEG-4 AVC is adopted for the digital broadcasting of which the service has been already started in Japan. H.263 or MPEG-4 Simple Profile is adopted for video-phoning by mobile phones. Many WMV systems and RealVideo systems are adopted for the contents on the Internet.
On the other hand, the motion picture encoding technology in recent years is performing complicated compression/expansion processing for the improvement in compression ratio of a motion picture. For this reason, if the number of pixels of the picture for compression/expansion processing increases, the required amount of calculation will become huge.
CPU incorporated in video equipment, such as a digital television, DVD, or a mobile phone, has a lower operating frequency than CPU mounted in a personal computer. Since the software processing by such a CPU with a low operating frequency is not speedy enough to perform the expansion processing (decoding processing) of the motion picture which requires the huge amount of calculation as mentioned above, the video equipment often mounts a hardware dedicated for the expansion processing to practice processing algorithm directly.
The dedicated hardware is not easy to change its functions after mounting. Therefore, in order that the dedicated hardware can decode efficiently the stream data conforming to one of the plurality of standards mentioned above, it becomes important to take into consideration the similar points and different points of the standards.
Processing which decodes the stream data of a moving image is practiced in the following procedures. Namely, the processing includes variable length decoding to decode variable-length-encoded stream data; inverse-quantization to convert the variable-length-decoded data into frequency domain data; inverse orthogonal transformation to convert the frequency domain data into pixel domain data; and motion compensated prediction to generate an interpolated picture from a reference picture according to a motion vector and to add the interpolated picture and the result of the inverse orthogonal transformation. Among these pieces of processing, the inverse orthogonal transformation and the motion compensated prediction perform common processing called two-dimensional filtering. The two-dimensional filtering is processing which requires a large amount of calculation especially in the decoding processing. In H.264|MPEG-4 AVC, in order to improve compression ratio, the filter processing for interpolation is performed to the reference picture. This filter processing is also two-dimensional filtering.
In this way, two-dimensional filtering technology is important technology employed broadly in the current motion picture processing.
FIG. 16 is a block diagram illustrating the conventional two-dimensional filter which is disclosed by Document 1 (Published Japanese patent application No. 2002-304624). The conventional two-dimensional filter illustrated in FIG. 16 comprises a picture memory 1, line memories 2a-2e, a vertical filtering unit 3, a horizontal filtering unit 4, and shift registers 5-6. In the conventional two-dimensional filter, first, the vertical filtering unit 3 practices a 5-tapped filter arithmetic vertically to the pixel stored in the picture memory 1; subsequently, the horizontal filtering unit 4 practices the same 5-tapped filter arithmetic horizontally to the pixel updated by the vertical direction filter arithmetic.
The following explains the further detailed operation of the conventional two-dimensional filter illustrated in FIG. 16. The pixel values of pixels composing one line of an input picture stored in the picture memory 1 are retrieved to the line memory 2a. When the pixel values of pixels composing the next line are retrieved to the line memory 2a, the pixel values of pixels which were retrieved first to the line memory 2a are transferred to the line memory 2b. By repeating this processing 5 times, the pixel values of pixels composing one line retrieved first will be stored in the line memory 2e, and the pixel values of pixels composing the following lines retrieved, one by one, will be stored also in the line memories 2a-2d. Subsequently, one pixel value of the rightmost pixel of each line memory is retrieved to the vertical filtering unit 3 at the same time, and the vertical direction filter arithmetic is practiced in the vertical filtering unit 3.
The pixel values which are filter-processed by the vertical filtering unit 3 are accumulated in the register 5. When five pixel values which have been filter-processed by the vertical filtering unit 3 are filled in the register 5, those five pixel values are inputted into the horizontal filtering unit 4, and the horizontal direction filter arithmetic is practiced in the horizontal filtering unit 4.
By repeating the above-mentioned processing, the practicing of two-dimensional filter arithmetic to the pixel values of pixels stored in the picture memory 1 is completed.
However, in the conventional two-dimensional filter illustrated in FIG. 16, in order to practice the vertical direction filter arithmetic, a buffer (line memories 2a-2e) was required for rearranging vertically the pixel values of the pixels retrieved horizontally. The path of the control circuit for controlling the buffer is required separately, in addition to the data path which practices the filter arithmetic, thereby causing increase in the circuit area. This problem is surely encountered, when the data path which practices the vertical direction filtering and the data path which practices the horizontal direction filtering possess the same data path structure as those in the conventional art. In the conventional two-dimensional filter illustrated in FIG. 16, there is another problem in that sequence of the filtering direction can not be changed easily.
Document 2 (U.S. Pat. No. 5,289,292) discloses technology in which a pixel data density is converted to generate a reduced display screen, using a horizontal direction filter and a vertical direction filter. The technology disclosed by Documents 2 requires a delay circuit (it corresponds to a buffer) between the horizontal direction filtering and the vertical direction filtering, for rearranging pixel data.
Document 3 (U.S. Pat. No. 5,410,362) discloses two-dimensional digital filtering technology employing a horizontal direction filter and a simple-structure vertical direction filter. The technology disclosed by Document 3 also requires a delay circuit (it corresponds to a buffer) which accumulates pixel data which are filter-processed in the horizontal direction before the filter-processing in the vertical direction is performed.